package com.ohos.connect.devicecloud.app.modular.project.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ohos.connect.devicecloud.app.modular.project.model.entity.Project;
import com.ohos.connect.devicecloud.app.modular.project.model.dto.ProjectAddDTO;
import com.ohos.connect.devicecloud.app.modular.project.model.dto.ProjectEditDTO;
import com.ohos.connect.devicecloud.app.modular.project.model.dto.ProjectIdDTO;
import com.ohos.connect.devicecloud.app.modular.project.model.vo.ProjectVO;

import java.util.List;

/**
 * APP项目Service接口
 *
 * @author Dongtao
 * @date  2024/12/05 10:46
 **/
public interface ProjectService extends IService<Project> {

    /**
     * 根据APP用户获取项目列表
     *
     * @author Dongtao
     * @date  2024/12/05 10:46
     */
    List<ProjectVO> getProjectListByAppUser();

    /**
     * 添加APP项目
     *
     * @author Dongtao
     * @date  2024/12/05 10:46
     */
    Boolean add(ProjectAddDTO projectAddDTO);

    /**
     * 编辑APP项目
     *
     * @author Dongtao
     * @date  2024/12/05 10:46
     */
    Boolean edit(ProjectEditDTO projectEditDTO);

    /**
     * 批量删除APP项目
     *
     * @author Dongtao
     * @date  2024/12/05 10:46
     */
    void delete(List<ProjectIdDTO> projectIdDTOList);

    // 删除项目
    Boolean deleteById(String id);

    /**
     * 获取APP项目详情
     *
     * @author Dongtao
     * @date  2024/12/05 10:46
     */
    Project detail(ProjectIdDTO projectIdDTO);

    /**
     * 获取APP项目详情
     *
     * @author Dongtao
     * @date  2024/12/05 10:46
     **/
    Project queryEntity(String id);
}
